home *** CD-ROM | disk | FTP | other *** search
-
-
- SCEDIT v1.1 7/25/91 George Christopher Thomas
- Updated 8/19/91, for version 1.1
-
- Copyright (c) 1991, George Christopher Thomas
-
-
-
- ***** disclaimer *** disclaimer *** disclaimer *** disclaimer ******
- * *
- * Some monitors are not capable of dealing with all of the modes *
- * that the driving display card is capable of. This can result in *
- * damage to the monitor. SCEDIT does not attempt to prohibit *
- * any video modes. Do not knowingly select a video mode that your *
- * monitor can not deal with! *
- * *
- ***** disclaimer *** disclaimer *** disclaimer *** disclaimer ******
-
-
-
- File Viewing and Screen Editing Utility
- -----------------------------------------
-
- SCEDIT is a utility for the display and editing of images. Currently
- it can show images in the GIF (Compuserve), TGA (Targa - TrueVision),
- BMP (Windows 3), and PCX (PC Paintbrush), and FLI (Autodesk Animator)
- formats. You control where to place the image on the screen and what kind
- of color conversion to use.
-
- A true-color (16,24,32 bits/pixel) image will always be displayed
- using the Uniform Palette capability. Color mapped images (1,4,8 bits/pixel)
- can be displayed using either a Uniform Palette or the palette encoded with
- the image. FLI animations are always displayed as they are - no color
- conversion can be performed.
-
-
-
- Required Environment
- -----------------------------------------
-
- SCEDIT can use either the Vesa or Tiga environments. It will try
- to use Vesa first, then Tiga. If neither are found, it aborts.
- 1. Vesa - tested with several Tseng ET4000 based VGAs.
- Supports Tseng HiColor 16bit color modes, if
- available. Since I determine a Tseng board by
- searching for the Tseng copyright in the VGA bios,
- it may have some problems with some Tseng based
- boards. Never tried with an ET3000 based VGA.
-
- Does not work with non Vesa modes - only Vesa
- defined modes, 640x400 and above. Standard VGA mode
- 0x13 (320x200) and its variations are for the birds.
-
- Using Vesa, SCEDIT MUST BE RUN FROM THE VGA SCREEN.
- It will not work when executed from the Monochrome
- Adapter screen.
-
- 7/15/91 - tested with more boards:
- Tseng ET4000 based (STB, Boca, Speedstar, Vermont
- Microsystem's Design Master), Video Seven
- VRAM II (1MB), ATI VGA Wonder.
-
- Note: VGAs with the HiColor DAC do NOT come up in
- a HiColor mode - you must explicitly select
- those modes from the mode submenu.
-
- 2. Tiga - tested with Vermont Microsystem's boards, Hercules
- Graphics Station, TI 34020 SDB boards. Supports
- Hercules Graphics Station at 24-bits, and Vermont
- Microsystem's Cobra Elite at 24-bits (somewhat of a
- hack to get Tiga to work with 24bit Elite). Will not
- work correctly on a 4-bit/pixel Tiga board.
-
- Notes: 1) On stock Hercules Graphics Station card (with
- just the 1Mb VRAM), the 16-bit (32,768 color)
- modes and the 640x480x8x2 double buffered mode
- (the last mode listed) do not work.
- This is due to lack of memory for Tiga download
- primitives. Note that the 512x480x24bit mode
- is also memory deficient - but more importantly
- the TI34010 GSP's graphics instructions can't
- deal with more than 16 bits per pixel. Therefore,
- the 512x480x24bit mode is done completely on the
- host. It is conceivable that the 16-bit (32k color)
- and the 640x480x8x2 modes will work on versions
- of the Hercules card which have the DRAM
- populated - this is uncharted territory.
- So DO NOT SELECT THESE MODES UNDER TIGA!!!!
-
- 2) Under Tiga, SCEDIT prints out a bunch of
- status messages to the DOS screen. If run from
- the Monochome Adapter screen you will see these
- messages. If run from the VGA screen, you will
- not see them. This will be removed in later
- versions.
-
- 3) Since the FLI display is a download feature,
- some Tiga modes on some Tiga boards may not
- have enough memory for the communications buffer
- the FLI code needs (64K). In that case, the FLI
- display is done completely on the host - much
- slower, but still works.
-
- ---> 4) Under Tiga, SCEDIT will try to download the
- RealTime fatbits and FLI extension, tigafbit.rlm.
- This file should either be in the current
- directory, or in the directory specified in the
- TIGA environment variable (in the -l<path> spot).
-
-
- Support for Hercules Graphics Station at 16-bits/pixel
- is forthcoming.
-
- SCEDIT requires an expanded memory driver. It will try to allocate
- 2MB, but will take whatever is available. The 800x600x16bit or
- 512x480x32bit modes will require about 550K to do the largest saveunder.
- If you use the save/restore screen functions, you will need much more memory.
- The 550K figure also is with the default fonts. Under Tiga, if you load a
- huge font (say above 30 pts), you will need much more memory. EMS is used
- only for saving/restoring under menus ("saveunders"). Lack of EMS will simply
- mean that menus are not restored. SCEDIT is still quite usable - just use one
- part of the screen for menus and the rest for images. The biggest hog of
- EMS (besides the save/restore screen) is the "about" dialog box. If you
- save a screen, then exit SCEDIT without restoring it, SCEDIT may not
- restore the EMS memory to the system.
-
- It also requires a Microsoft or compatible mouse driver.
-
- SCEDIT needs most of the lower 640K of memory to function correctly.
- I use it with about 470K free (as CHKDSK reports). I have had problems
- in machines with less memory. SCEDIT will recognize network disks and
- floppies. I recommend not loading images off of floppies, as it is
- deathly slow.
-
- SCEDIT runs on all 386/486 machines. It should run on 286s, but I
- have never tried it.
-
- Under Tiga, SCEDIT will try to download the RealTime fatbits
- extension, tigafbit.rlm. This file should either be in the current directory,
- or in the directory specified in the TIGA environment variable (in the
- -l<path> spot). Under Tiga, SCEDIT will create a configuration file,
- SCEDIT.CFG, in the directory where SCEDIT.EXE was executed from. This
- is to speed up the Tiga initialization. It sometimes does strange things.
- This is due to an unfathomable bug in SCEDIT. I am trying to nail this one.
- If you have lot of problems, run scedit with the -n switch:
- SCEDIT -n
- This will force a rebuild of the configuration.
-
- If SCEDIT really screws up, and your video is all screwed up, you can
- get back to DOS by clicking on the right mouse button, then hitting the 'q'
- (or 'Q') key. This usually works, but may not if SCEDIT is really lost
- (SCEDIT has been very stable, so this should be a rare, if not totally
- unknown, event).
-
-
- Philosophy
- -----------------------------------------
-
- SCEDIT was originally written to address the need for a simple
- screen editing and file viewing facility. As it evolved, more emphasis
- has been place on file viewing. As a result, the screen editing functions
- have atrophied - they are still there, but not nearly as functional as a
- real "paint" program. I will probably not be enhancing these drawing
- functions - unless there is a Great Public Outcry!
-
- The left mouse button is wired to control "actions", such as
- the drawing features. The right mouse button is wired to control menus.
-
- Because of the disparity between the Vesa and Tiga environments,
- there are several features which work only in particular environment.
- These are enumerated in a later section.
-
-
-
- How to Use - File Viewing Tutorial
- -----------------------------------------
-
- Type SCEDIT and hit return. A cursor will appear. Click on the
- right button to pop up a menu. Menu entries with a little right arrow
- denote submenus - simply move cursor over the arrow to bring up the submenu.
- At anytime, moving the cursor outside of a menu will close that menu.
- The exception to this is the Load menu. The load menu will not go away
- until OK or Cancel is pressed. The load menu is not considered a submenu,
- and therefore the envoking menu does not have a right arrow next to the
- "Load" entry.
-
- Try clicking on the Load entry. You will see the load menu pop-up.
- Note the field for the Drive, Directory, and Filename. Note that wild
- cards are supported for the Filename. If you click on one of these fields
- the arrow cursor will disappear and a text cursor will appear. You can
- use the backspace key to delete characters. Hitting the return or a mouse
- button when finished will update the file box, using the new information.
-
- Look at the file box. You will see a list of files, one of which
- having a highlight bar. Clicking on a highlight bar will:
- - if the bar is over a file, try to load that file,
- - if the bar is over a directory, switch to that directory,
- - if the bar is over a drive, switch to that drive.
- Clicking on another file with move the highlight bar. Clicking on
- an already highlighted file name is a short cut for clicking on OK.
-
- Beware switching to drive A or B - if your disk is out of the
- drive, and DOS issues a "Abort, Retry, Ignore?" message, you will NOT SEE
- THAT MESSAGE because you are on the hi-res screen!
-
- You can also use the scroll bars to navigate through the file box.
-
- After clicking on a legal file (recognized format), SCEDIT will close
- the load menu and display a box depicting the image's size. You can
- position the box anywhere, even clipped, on the screen. Clicking the right
- button will cancel the image, clicking the left will start displaying it.
-
- There are a few other things - you can turn on/off the Uniform
- Palette, and if your board supports multiple modes you can
- switch back and forth between them, etc.
-
- Just try it.
-
-
-
- How to Use - Other Features Tutorial
- -----------------------------------------
-
- Here is an enumeration of the various menus. If an arrow is
- after a menu entry, that entry has a submenu. If an * is before a
- menu entry, that entry is merely a toggling switch. The main menu is popped
- up with the right mouse button.
-
- Notes: after loading an image using the uniform palette capability,
- you must explicitly load the uniform palette (using the
- palette submenu) - except for Targa files, which always
- force a uniform palette load.
-
- main menu:
- draw -> drawing functions, assigned to left button
- state -> state changes - colors, rops, clipping, etc
- mark -> area mark stuff - boxes, polys
- edit -> regular fatbits, palette editing, RealTime
- fatbits
- load file loading submenu
- save file saving submenu
- about a little message
- quit exit back to DOS
-
-
- draw: - these are assigned to the left mouse button. Once
- selected they stay attached to left mouse button until
- another is selected. Subject to current color, fill flag,
- ROP, clipping (all set from states submenu):
-
- line draws vectors. click on left to anchor
- first point, click on left to anchor and
- draw each line. click on right to stop.
- cline same as line, but connects first point
- with last, when right button is pressed.
- sketch click on left button, move mouse to draw
- points, click either button to stop.
- area move cursor to desired point, click on left
- button to seed fill from there. Tiga only.
- circle move cursor to desired center point, click
- on left button, move mouse to move circle,
- click on left to accept, right to abort.
- Tiga only.
- ellipse move cursor to desired center point, click
- on left button, move mouse to move circle,
- click on left to accept, right to abort.
- Tiga only.
- rect move cursor to desired point, click on left
- to start, drag rubber rect to desired point,
- click on left to accept, right to abort.
- flood move cursor to desired point, click on left
- to flood screen
- point move cursor to desired point, click on left
- to draw a point.
- blkmov must have previously marked an area using the
- mark submenu. click on left button, move
- box to desired location, click on left to
- accept, right to abort. copy box from marked
- area to destination area.
- text click on left button to bring up a text entry
- box, with the last text string entered displayed.
- At this point the regular cursor will have
- disappeared and a text cursor (underscore)
- will appear. At this point if you hit a key
- the previous text string will disappear, or if
- you hit the backspace key the previous text
- string will be edited. The only editing
- allowed is the backspace key. Hit a return
- or mouse button to accept the text.
- DO NOT ENTER MORE THAN 80 CHARACTERS!
- After selecting the text, a box, the size of
- the text string, will be displayed. You can
- position the box anywhere you like. Click
- the left button to draw the text, right button
- to abort.
- Draws the text in the current font, transparent
- only.
- zoom must have previously marked an area using the
- mark submenu. click on left button, stretch
- box to desired location, click on left to
- accept, right to abort. Will do a "stretch
- blit" from marked area to destination area.
- Tiga only.
- zoomout must have previously marked an area using the
- mark submenu. click on left button, stretch
- box to desired location, click on left to
- accept, right to abort. Will do a "stretch
- blit" from marked area to destination area.
- Variation of zoom. Tiga only.
- poly don't work.
- copy poly must have previously marked a poly using the
- mark submenu. click on left button, position
- poly's bounding box to desired location,
- click on left to accept, right to abort. Will
- copy poly from marked area to destination area.
- rgb mesh this is a complicated one. basically, you
- move the cursor to a desired vertex, click
- on left, select the RGB color you want, click
- on right to confirm RGB color. Keep moving
- and selecting new vertices (with RGB colors).
- Keeps a "running" triangle mesh. Click on
- right to stop.
- flip box draws a box, the same as for rectangles. The
- box contents are then flipped upside down.
- reverse box draws a box, the same as for rectangles. The
- box contents are then reversed left to right.
- brightness draws a box, the same as for rectangles.
- Then you can use the '-','+' keys to adjust
- the brightness of the enclosed pixels. '1'-
- '9' sets the magnitude of change. By default
- all red green and blue are changed. If you hit
- the 'r', 'g', or 'b' keys only the corresponding
- color will be subsequently altered. Hit the
- 'a' key to alter all red, green, and blue.
- Hit any other key or a mouse button to exit.
- ONLY FOR TRUECOLOR (16,24 BIT) MODES!
-
- states: - these are for setting the drawing states - colors, ROPs,
- clipping, palettes, video modes, fill flag, color
- conversion:
-
- color brings up a 16x16 grid of all 256 colors.
- the current color has a X over it. If you
- click on left button inside of the color
- grid, the color you were over becomes the
- new drawing color. if you click outside the
- color grid, the current color remains
- unchanged.
- rop -> bring up the rop submenu. these are all the
- Tiga Rops. Vesa supports only
- s
- s NOT d
- s XOR d
- at the moment. selecting others under
- Vesa will result in strange things.
- Under Tiga, Rops apply to most everything-
- all of the drawing stuff, including blkmovs,
- but not RGB mesh.
- fill -> brings up fill submenu. for setting the fill
- flag. affects drawing stuff - rects, circle,
- ellipse, poly (when implemented). Defaults to
- unfilled.
- palette -> palette selection submenu.
- modes -> all available video modes. just pick the
- one you want and away you go.
- clipping -> clipping submenu.
- * Uniform Palette if on, all images are loaded into
- a uniform palette. Not all that great for
- 24-bit images, but fine for previewing.
- if off, all images are loading using their
- "native" palettes. Exception: 16,24,32 bit
- "true color" images ignore this flag and
- are always loaded using the uniform palette.
- * transparency does not draw pixels of color 0. used
- to "overlay" images with black areas over
- previous images. Not implemented yet.
- pick color move cursor to pixel whose color you want
- to be the current drawing color, then click
- left button. Not implemented yet.
- nearest color brings up the palette editing menu. pick
- the RGB values you want for the current
- drawing color, will set the current drawing
- color to the nearest available color in the
- palette.
- * verbose if on, gives information about files being
- viewing, etc. For my debugging purposes,
- as it either prints to the monochrome
- adaptor screen, or in Vesa, prints right
- onto the graphics screen, screwing everything
- up. I will eventually have this work with
- nice graphical text boxes. But, stay away
- for the moment.
- * single step if on, FLI,FLC,&CEL displays pause after each
- frame until a key or mouse button is pressed.
- Additionally, the current frame number is
- printed on the top left corner of the screen.
- When the animation is done the total number of
- frames is displayed.
- if on, VOC playbacks pause after each block
- until a key or mouse button is pressed.
- Additionally, the VOC block number is printed
- on the top left corner of the screen.
- Good for figuring out frame/block numbers for
- constructing MMF files.
-
-
- palette: - for setting current display palette, saving/restoring
- palettes, and palette cycling.
-
- * uniform palette used for uniform color conversion.
- * cone distribution palette with lots of colors/shades.
- good for drawing stuff.
- * grey scale an approximation to a real grey scale.
- Fun to load an image using the uniform
- palette capability, then selecting this
- palette for a cool grey scale image.
- * acad 16 why?
- * acad 256 - because we can.
- * last image's palette loads the palette which the
- previous image had. has bugs.
- push push current palette onto a stack
- pop pop palette from stack and make current.
- cycle cycles the current palette. Use -,+ to
- control direction, 0-9 for speed, space bar
- to pause (until another key press). Use
- left mouse button to stop at current cycle,
- right mouse button to stop and restore to
- original, uncycled, palette.
-
-
- clipping: - for setting the clipping window.
- respected by file loads and drawing stuff.
-
- set to box much like the rectangle draw. allows you
- to select the position and size of the
- clipping window.
- set to full screen resets clipping window
- edit box allows you to edit size/position of window.
- described below.
-
-
- mark: - for marking areas of the image for later manipulation.
-
- box much like rectangle draw. allows you to
- select the position and size of the mark
- box
- edit box allows you to edit size/position of window.
- described below.
- line poly mark an area bounded by line segments
- sketch poly mark an area bounded by an arbitrary polygon.
- has some bugs.
- push box push the image in the box onto a stack
- pop box pop an image from the stack, allowing you
- to place box anywhere.
- push poly similar to push/pop box, but operates on the
- pop poly polygon mark. Not implemented yet.
- save screen saves entire screen to EMS.
- restore screen restore entire screen from EMS.
-
-
-
- edit: - for editing areas of the image, and for editing the
- current color's RGB.
-
- edit fatbits brings up the fatbits box. Works by capturing
- what is under the cursor when the left button
- is pressed, and blowing it up in the fatbits
- box. You can then move the cursor into the
- fatbits box and draw individual pixels using
- the current color and rop. click on right
- button to stop.
- edit palette brings up the palette box. adjust the
- current color's RGB using the RGB and HSV
- sliders (using left button). click on right
- within the box to select the changed color,
- outside the box to abort any changes.
- set fatbits size -> brings up size submenu. You
- can pick 2,4,8,16,32,64 as the fatbits size.
- The size of the total fatbits box can't be
- changed. This changes the size of the blown
- up pixels within the box. Also applies to
- the RealTime fatbits.
- * grid turns off/on the fatbits grid
- * antialias filter when on, editing fatbits will try
- to smooth the selected pixel with it's
- surrounding pixels (averages RGBs, then picks
- nearest color). Doesn't work all that well.
- * RealTime fatbits Turns on/off the Tiga realtime
- fatbits display. This blows up the pixels
- under the cursor, every vertical retrace,
- using the Tiga download interrupt extensions.
- for display only.
- There is a rare bug which sometimes causes the
- board to crash. I am working on this.
- resize/move RealTime lets you resize/move the realtime
- fatbits box. See the edit box description
- below.
- reset RealTime fatbits resets the fatbits box to the upper
- left of the screen.
-
- Notes: the RealTime fatbits are for Tiga only. It does not
- save what is under the box (not yet...). It respects
- the fatbits size, but not the grid or antialias
- features.
-
-
-
- load: - self explanatory. Loads TGA, GIF, BMP, PCX, FNT, PAL
- files, with the following restrictions:
-
- GIF - only 87a format, single images.
- TGA - not known if SCEDIT supports Black&White format
- (no test images). Minor glitches have been reported
- with type 10 RLE true-color images, but I have not
- been able to replicate any of the problems. (problem
- was last 10-15 scanlines garbled...beats me!)
- PCX - bugs with certain images - mostly 4 bit/pixel EGA.
- Can't deal with monochrome format.
- BMP - uncompressed only, no OS/2 bitmaps (OS/Who?).
- FNT - Tiga only. works Great.
- PAL - ascii palette list. first line is "PAL", second
- line is # of colors, rest of lines are Red Green
- Blue values.
- RAW - SCEDIT format for a raw bitmap. First word of
- file is x size, second word is y size, subsequent
- bytes are image data, row major format. no palette
- info included.
- FLI - small format, Autodesk Animator. No clipping, so
- the image box must be totally in the screen before
- starting the animation. Hit -,+ to speed up and
- slow down the animation. Hit 0-9 for direct speed
- control (0 is fastest - no VSYNC waits at all).
- Hit any other key or a mouse button to abort.
- FLC,CEL - large format, Autodesk Animator Pro. No clipping,
- so the image box must be totally in the screen before
- starting the animation. Same control keys and exit
- keys as FLI. Does not take advantage of download
- speed under Tiga - therefore it is somewhat slow, but
- still ok to view the animation. Vesa is rather
- zippy.
- BUG: can't handle frames larger than 64K. There is
- one FLC, distributed with Animator Pro (unionsta.flc),
- which starts off with a huge block. SCEDIT will skip
- blocks larger than 64K. This results in a wierd
- image, but is better than crashing! See "Future
- Support" below.
- VOC - Sound Blaster files. Plays the entire VOC file,
- marching down through the blocks, if any. Obeys
- repeat blocks, if any. Hit a key to break out of
- a repeat block or out of the entire file. Does not
- handle marker blocks or silence blocks.
-
- Note: SCEDIT wants the Blaster to be at I/O 0x220,
- interrupt #7 (all default settings). If yours is
- different, envoke SCEDIT with the -s switch:
- SCEDIT -sXXX,I
- where XXX is the I/O address in hex, and I is the
- interrupt number in hex. For example to use a
- Blaster at I/O 0x210, int 5:
- SCEDIT -s210,5
-
- If no Blaster is found, it simply won't
- play the file. Want to support PC speaker but can't
- figure out how to convert VOC amplitude modulation
- to PC speaker frequency modulation.
- MMF - my very own "MultiMedia File" format. Use to play
- back an animation (FLI,FLC,CEL) with a VOC sound file,
- with optional synchronization! Ascii script file: first
- line is animation file, second line is .VOC file. If
- file ends there, then the sound is looped forever as
- the animation runs. Optionally, there can be a list
- of numbers, two per line, such as this:
- 1 2
- 5 3
- .
- .
- .
- where the first number is the animation frame number,
- the second number is the VOC block number. In this
- example, sound block 2 would be synchronized to
- animation frame 1. Then sound block 3 would be
- synchronized to animaton frame 5.
- *** See included BART.MMF for an example ***
-
- To synchronize start of animation with start of the
- sound always:
- 0 0
-
- I realize this is a crummy way to provide this
- capability, but it does work.
-
- To construct an MMF file, you need to know the frame/
- block numbers of importance. You can use the "single
- step" mode, in the state submenu, to step through both
- animation files and VOCs. As it single steps, the
- current frame/block number will be displayed in the
- upper left corner of the screen.
-
- This works but perhaps I should write an "authoring"
- utility to do all of this...
-
-
-
- save: - self explanatory. Saves GIF, RAW, PAL files.
- You must have a box marked to save an image.
-
- GIF - non-interlaced format only.
- PAL - same as above.
- RAW - same as above.
-
-
-
- edit box - all things that have an "edit box" entry use the same
- routine. When you pick edit box, the box will be displayed
- with 9 "handles". There is one at each corner, one at
- each edge midpoint, and one in the center. Move the cursor
- to the handle you wish to grab, and hold the left button down
- while you drag. Repeat until box is the size and position
- that you want. The center handle moves the box, the other
- handles resize the box. Then click on the right button to
- indicate you are done.
-
-
- Notes:
- Most of this stuff works in 16/24 bit modes. The exceptions
- are the fatbits, palette editing, and palette menu functions.
-
-
-
-
- Configuration File
- -----------------------------------------
-
- In Tiga, SCEDIT creates a configuration file which lists all of
- the Tiga modes. The first time this may take a moment or two. Subsequent
- executions of SCEDIT use this file to get the default font, default palette,
- and the available modes. The file is SCEDIT.CFG and will be in the
- same directory as SCEDIT.EXE (SCEDIT looks at the execution string at the
- end of it's PSP to determine this -- DOS 5.0 should work...I have used it
- with DOS 3.3 and DOS 4.01).
-
- There is an example configuration file:
-
- SCEDIT v1.0
- device TIGA
- font none
- palette none
- reserved *** this line is RESERVED! ***
- current mode 0
- number of modes 5
- mode 1024 768 8 8192 8 1
- mode 1024 384 8 8192 8 1
- mode 800 600 8 8192 8 1
- mode 640 480 8 8192 8 1
- mode 512 480 32 16384 8 1
-
- SCEDIT's parser is really stupid -- everything must be in the exact
- place. If you want to add a default Tiga font, replace the font line with:
-
- font <drive:path\fontfile.fnt>
-
- with exactly 1 space between the font and drive/path. This font will be
- loaded when SCEDIT starts up and after each mode switch. The Tiga font
- austin20.fnt is a cool font.
-
- The same goes for the palette line. The palette file is a standard
- SCEDIT .PAL file.
-
- If you switch Tiga boards (which have different modes, etc), you
- will want to either delete the old config file, or use the -n flag:
- SCEDIT -n
- which will force a configuration rebuild.
-
- In VESA, SCEDIT will ignore the configuration file. It will not
- check for one, read one, or write one out. This makes it relatively easy
- to switch back and forth between Vesa and Tiga.
-
-
-
-
- Limitations and Known Bugs
- -----------------------------------------
-
- The input fields in the Load menu will overflow if too many
- characters are entered.
-
- There are *still* some cursor bugs under Vesa. I have fixed quite
- a few since scedit version 1.0.
-
- The fatbits, when used with a size of 2 or 4, will sometimes
- screw up.
-
- The connected line, cline, does not work correctly. The next to
- last line segment is not drawn.
-
- Sometimes, after a lengthy session, you can't display a FLI file
- (due to a memory allocation failure). I have noticed this if you use the
- poly marking/manipulation feature. Working on this.
-
- FLI,FLC - SCEDIT can deal with probably 99% of these files, but there
- are some that it has trouble with. This is due to lack of a complete spec.
-
-
-
- Future Support
- -----------------------------------------
-
- The input field overflow problem in the Load menu will be fixed.
-
- Cursor bugs will be fixed. Yes, there still are some...arrgghhh.
-
- The following file formats will have the following enhancements:
- GIF - 89 format, multiple images, etc.
- FLC - frames larger than 64K will be handled (somehow...).
- Also, Tiga download code for FLCs will be implemented.
- I am kind of waiting for FLCs to become more popular,
- now that Autodesk Animator Pro has been released.
- However, I question its potential popularity given
- its relatively high price tag...
- TGA - Black&White, if I can find a test image...
- BMP - compressed format. No plans for OS/Who? format.
- PCX - monochrome format.
- FNT - for Vesa. I have this code ready to roll.
-
- I hear the distant baying of TIF supporters. It would be a
- tremendous task to write a TIF decoder which could handle all the TIF
- formats, but I am considering adding support for the commonest formats.
- The main obstacle is the lack of a copy of the TIF spec.
-
- Better Tseng detection.
-
- Flesh out the drawing functions for Vesa (circles, etc).
-
- Some of the functions in SCEDIT will probably be removed or
- drastically altered. I am not happy with the save screen, restore screen,
- push box, pop box, push poly, pop poly features. I might axe them. I
- might rewrite to eliminate the stack metaphor, perhaps moving away from
- expanded memory, perhaps using the hard drive for storage. Who knows -
- certainly not me! I think the drawing functions are quite primitive and
- are really useless for anything other than hacking around, but after all
- SCEDIT is not a paint program.
-
- Eliminate the need for expanded memory, at least under Vesa. On
- 1Mb VGAs there is a fair amount of non-displayed memory to use instead of
- using expanded memory.
-
-
-
-
-
- Cool Things
- -----------------------------------------
-
- As always, I am on the hunt for the following devices -
- these should work with v1.0 SCEDIT:
- * 1280x1024x256color Vesa VGA (packed pixel),
- * 1024x768 16bit HiColor Vesa VGA (Yeah!),
- * 1024x768 16bit or 24bit Tiga (Yeah! Preferrably a 34020!),
-
- will not work with v1.0, but I am curious:
- * any Vesa VGAs with non-chain 4 modes. Non-chain 4 is why
- SCEDIT is so fast on Tseng ET4000 based boards. Although
- the Vesa spec allows for "non-chain 4" video modes, SCEDIT
- currently ignores any non-chain 4 VESA mode. It selectively
- uses non-chain 4, for rectangles only. In my experience, non-
- chain 4 mode, in high resolution modes (>64K), works only on
- a Tseng ET4000. Video Seven and ATI both fail (others may
- too - I have tested just these). This is understandable,
- as non-chain 4 seems to be directly descended from the old
- EGA 16 color planar architecture, with its 64K memory
- limitation. Non-chain 4 lets you write 4 8-bit pixels
- at once. The Great Clone Maker, whose name begins with
- a 'c' and ends with a 'q', from the Lone Star state, has
- advertized their new accelerated VGA (goes up to 640x480x
- 256 colors - boy they're really out on a limb this time...
- yah...) as having both packed pixel and "multiple plane"
- modes. I suspect that the multiple plane modes are really
- nothing more than non-chain 4 in disguise, but who knows.
- I digress. Anyhow, Bravo Tseng!
-
-
- Changes from Version 1.0 (to Version 1.1)
- -----------------------------------------
- This is a running tally of changes - information under later dates
- can, and might, superceed information under more recent dates.
-
- 8/3/91:
- Sound Blaster files, .VOC, can now be played - if you have a
- Sound Blaster card! It can deal with all the compression types,
- and most of the block types. It does not currently handle silence
- blocks. It ignores marker blocks. It obeys repeat blocks - but
- only deals with "endless" repeats - no count is obeyed. Will
- loop forever, until a key is hit or the mouse button is held down
- long enough (to trigger my polling loop). If you trigger a break,
- either with the keyboard or mouse, and you are in a repeat block,
- it will break out of the repeat block and continue processing the
- rest of the file. If you are not in a repeat block, it will break
- out of the entire file.
- Want to eventually sychronize sound playback with FLI animations.
-
- 8/3/91:
- The problem with saving multiple GIF files has now been fixed.
- You can now mark and save as many as you wish, without SCEDIT
- screwing up.
-
- 8/3/91:
- SCEDIT EXE size is down to about 309K, from 409K. Malloc'ed a
- bunch of stuff, mostly with the gif save routine. Removed the
- 24 bit seed fill (didn't work very well anyway - besides what good
- is a plain non-gradient seed fill on a card that can display 16.7
- million colors?!? SCEDIT is hopelessly palette, 256 color, bound).
- Removing that feature saved a tad more than 64K. I had a huge
- (64K) seed fill stack statically allocated.
-
- 8/5/91:
- Can now play .FLI files, with all graphics devices (both Tiga and
- Vesa). Under Tiga it is a little slow - working on this. Under
- Vesa it is just barely acceptable on my machine (ancient clone
- 386/20, slow 41256 DRAMs, MFM AT hard disk). I suspect a modern
- 386 or 486 would be quite zippy.
- FLI playback works only for 8 bit/pixel video modes.
-
- 8/5/91:
- New drawing primitives - "flip box" and "reverse box", under the
- effects menu (main->draw->effects->). Both are similar to the
- rectangle primitive; i.e. both use a rubber banding rectangle. Once
- the rectangle is selected, "flip" flips the pixels within the
- rectangle from top to bottom, and "reverse" flips the pixels within
- the rectangle left to right. Works in all pixel depths.
-
- 8/18/91:
- Coded Vesa FLI stuff in assembler - helps a bit (I estimate
- 20-30% faster).
- Finally combined animations with sound. Uses a .MMF (MultiMedia
- File format - my own design) file. The MMF file format is
- essentially an ascii script:
- <.fli file with pathname>
- <.voc file with pathname>
- <fli frame #> <sound block #>
- <fli frame #> <sound block #>
- .
- .
- .
-
- It is rather crude, but it works great! Disk cache is
- recommended...
-
- 8/19/91:
- Finally added tiga downloaded code for FLI displays. Not
- concurrent, but still pretty fast. The tiga mode in use needs
- 64K available, accessed via gsp_malloc(). If there is not
- enough memory, it will not try to download the frames - it will
- use the slower, host bound method instead.
-
-
-
- Summary of Changes from version 1.0 to 1.1
- --------------------------------------
- * Fixed a bug with saving multiple GIF images.
- * PCX files display better.
- * VOC file playback.
- * FLI, FLC, CEL file display.
- * Shrunk SCEDIT. Down from about 420K to about 308K.
- * MMF - (FLI/FLC/CEL)/VOC "multimedia" capability - Really Cool.
- * New drawing commands:
- - flip, reverse, brightness, text.
- * Better Palette Edit menu:
- - smaller, now has a rectangle at top to show current color.
- - makes it VERY useful for true-color drawing - you can
- interactively change the current color to whatever RGB you
- want. As you change it the RGB is displayed in the top
- rectangle.
- - Bad Point: under Tiga with a big font (above 25 pts, say),
- the text is a bit misadjusted. Still works fine, and the
- smaller size makes it much faster.
- * Redid much memory management:
- - Found a MAJOR bug with TGA/GIF/PCX/BMP displaying with
- the Vesa/Sierra 16 bit/pixel mode - memory overwrites.
- * Fixed bug with Tseng/Sierra 16-bit/pixel colors.
- * I *think* I have eliminated the nasty "Out of Memory" error that
- sometimes (rarely) occurs after exiting SCEDIT.
- SCEDIT allocates/frees large chunks of memory like there is no
- Tomorrow. For all I know this could be a bizarre DOS 3.31 or MSC
- 5.1 bug... I remain optimistic but baffled...
-
-
-
-
- Disclaimer
- --------------------------------------
- SCEDIT is freeware. You are granted the right to use SCEDIT for as
- long as you like, provided it is not used for commercial purposes or for any
- profit. SCEDIT may be freely copied and distributed but may not be sold.
- You may not reverse-engineer, disassemble, modify, alter, rename, contaminate
- with a virus, or otherwise muck with SCEDIT. Just use it.
-
- SCEDIT is distributed without warranties of any kind, either expressed
- or implied, including but not limited to implied warranties of merchantability
- and fitness for a particular purpose.
-
- In no event shall I, George Christopher Thomas, be liable for any
- errors contained herein or for incidental or consequential damages in
- connection with the furnishing, performance, or use of the SCEDIT product or
- documentation.
-
- Nasty copyright stuff:
- 'GIF' and 'Graphics Interchange Format' are trademarks of CompuServe
- Incorporated, an H&R Block company.
- 'Sound Blaster' is a trademark of Creative Labs Inc. and Creative Technology
- Pte Ltd.
- 'Tiga' is a trademark of Texas Instruments, Inc.
-
- I hope that appeases Lots of Litigatious Leacherous Lawyers.
-
-
-
- Epilogue
- --------------------------------------
-
- Trademarks are property of their respective companies. This
- document is by no means intended as a brand or product endorsement.
-
- Many thanks to Tom Haviland for his exhaustive testing of SCEDIT
- with the Hercules Graphics Station card.
-
- I am not charging for this utility. Feel free to distribute it,
- provided it is distributed intact, as SCEDIT10.ZIP:
- scedit.exe
- scedit.doc
- tigafbit.rlm
- bart!!.fli
- bart.voc
- bart.mmf
- If you do upload SCEDIT11.ZIP somewhere, this is what the description
- should say: "File Viewer, TGA/GIF/PCX/BMP/FLI/FLC/VOC, Tiga/Vesa SVGA".
- And if there is room for a longer description, add "Includes a FLI/VOC
- multimedia example".
-
- Note that the distribution name is SCEDITxx.ZIP, where xx is the
- version number (i.e., 10 for version 1.0, 11 for version 1.1, etc...)
-
-
- If you really like the program, you might consider sending me
- a few bucks to support further development and bug fixes. Donators will,
- of course, receive the latest version.
-
- Lastly, let me know if you have a Tseng HiColor VGA which is not
- detected correctly (my bios "Tseng" search may let a few implementations
- fall through the cracks...).
-
- Send bug reports, suggestions, etc, to (at least until Mar 1992):
- G. Chris Thomas
- 221 Pine St, Apt 3
- Burlington, VT 05401
-
- I hope you find this utility a useful one.
-